#!/usr/bin/env node

const Koa=require("koa");

const app=new Koa();

//M-logger
app.use(async(ctx,next)=>{
  //3、ctx，需要async
  next();
  const cost=ctx.cost;
  //2、return，需要用到await和async
  //const cost=await next();
  //1、
  //next();
  //const cost=ctx.response.header.cost;//拿到响应头中的数据
  console.log(`${ctx.method} ${ctx.path} ${cost}ms `);


})

//M-ms
app.use((ctx,next)=>{
  const start=Date.now();
  next();
  const end=Date.now();
  //1、通过响应头中放数据
  //ctx.set('cost',end-start);
  //2、return
  //return end-start;
  //3、ctx
  ctx.cost=end-start;
})

//M-hello
app.use((ctx,next)=>{
  ctx.body='hello world';
})
app.listen(8080);

console.log('hello koa!');





